This group project required groups of students to simulate a game development environment with programmers, artists and designers. We had to come up with an idea for a game that potentially could be presented to investors or publishers. In order to do that, we had to create a bussiness plan, game design document, technical design document and a working game prototype. Our group consisted of 3 members. We had to split the tasks based on our experience and skills. For this project my main role was to be involved as the Lead Programmer, Story Writer and Level Designer. This was decided as the best roles for me as I feel confident in designing and implementing features using C++ as well as using high level scripting system(UE4 Blueprints). I was in charge of implementation and optimization of the initial version of the game.
The core functionality has been extended from my previous project in which I created a spellbook system with abilities and effects as well as foundations for the AI characters. in this project my main role was to add more functionality and optimize the existing systems.
The role of being a leading programmer also obligated me to write capacity innovation in our business plan regarding technical elements that stands out. I was also responsible for producing our Technical Design Document which will be used for the full game development. This involved creating UML diagrams and detailing the technical elements that are required for our project. Being a lead programmer required a high level of technical knowledge of the Unreal Engine as well as how to integrate a game module within the engine and how our classes should be structured.
Player Movement System
Player can move a main character to a specified location by clicking the left mouse button. Player character will move towards the location with a speed specified in its stats. By clicking and holding right mouse button, player can rotate the character's camera.
Character Stats System
Each character will have a stats that will define basic properties of the character such as health, mana, speed and description. Stats will be defined before the game starts, however they will be modifiable later on during the game due to damage receiving or effects applied. Object Highlighting System - objects that are hovered by a player's mouse pointer will be highlighted using various colours to indicate enemies and allies.
Melee Combat System
Character and other characters can fight in melee. Melee combat includes using of bare hands, swords, spears and other typical medieval weapons. Once the two characters are close enough, they can start performing melee attacks. Each attack can be defined by various properties such as attack speed, interval duration, damage and animation. This will help make each combat more interesting and unique as these values might also change during the game (they might be modified by levelling the character up or applying certain effects on characters).
Ranged Combat System
can fight in ranged. Ranged combat includes using of bows, stones, javelins and even magical projectiles. Once a missile unit spotted an enemy unit within a certain radius, it can start performing its ranged attacks. Each attack can be defined by various properties such as attack speed, interval duration, damage, range, projectile type and animation.
Abilities System
will be a reusable skills that can be used directly by a character (either player or AI) and also can be incorporated into other systems such as spellbook. The main purpose of the abilities will be executing various kinds of behaviours such as area attacks, healing etc. Abilities will be also integral part of the spell and once the spell has been casted, the ability(or a set of abilities) will be executed.
Effects System
It can help the player (and his enemies) shape the battlefield. Powerful gameplay buffs and debuffs can change the outcome of the battle. Effects include elements such as attack value buffs/debuffs, speed buffs/debuffs and health buffs/debuffs. Effects can be applied temporary (after the end of the effect duration, all changes will be reversed) or permanently. If an effect is applied temporarily, the exact value that was used to modify one of the character's stats will be reversed (eg. If 10 health has been added to the character, the same exact number of 10 health will be decreased at the end of the effect). If the effect is permanent, all values that modified the character's stats will not be reversed. Effects can stack on each character, meaning that there can be more that one effect currently active, however there will be a maximum one active effect per effect type.
Spellbook System
Player will be able to open the spellbook by clicking the spellbook icon. Once the spellbook has been opened, player will be able to cast the available spells by clicking on the spell icon. If player will hover the spell icon, the description of the spell will appear which will give more information about the particular spell. Each spell has a chance of success and it needs a certain amount of mana resource in order to be casted. Unsuccessful spells also will take the mana resource. Spells will be sorted based on their magic sphere. There will be several magic spheres available such as fire, water etc. with unique spell sfor each sphere. Additionally, each spell will execute certain abilities such as area attacks or healing.
Environment
• The overall environment should consist of forests, grasslands and mountains. The vegetation in the lower parts of the level should be most noticeable element of the environment while in the higher regions, rocks and mountains should dominate.
• The colours of the environment should be predominantly shades of green for grasslands and grey for mountains.
• King's roads should have brighter and very easy to notice colour to help the player identify the main roads. Each road should be used as a guide for the player.
Lighting and Particles
• The environment and objects should be lit brightly enough to imitate the day light, however the colour of the light should be tinted to the darker colours such as grey or blue to build a darker atmosphere.
• Particles should be used to convey certain elements and events of the scene such as alarming fire or casting spells.
Characters
• The protagonist, Thorn, should exude strength and knowledge through usage of darker colours for his armour and equipment. The animations should convey the nature of the paladin and the weight of his plate armour.
• The antagonist, Belien, should present darkness, despair and cursedness. His colour should be very dark red, similar to the coplour of blood. His animations should be combative and cruel, utilizing attack and aggression. He also should be much bigger than other demons and monsters.
• King Enik should wear a light, golden armor and the crown of the North should be put on his head. He should look majestically in game and in cinematic.
Camera and Interface
• The camera should be a placed over the head of the character to present the top down view. It should not be locked to the rotation of the character.
• The camera should be flexible and the rotation should be allowed as well as zooming in and out.
• The overall interface of game should be minimalistic with descriptive icons to access the core elements of the UI and gameplay such as health, mana and spellbook.
As a Story Writer I was responsible for writing the new, original story about the world of Elethria with great, rich history to engage the player and to help the game stand out. I was inspired by Game of Thrones and its very deep historical background as well as a great story line. The Lord of The Rings and Warhammer Fantasy were inspirations for the creation of the fantasy world and story about Chaos and its chaos lords. I wrote the whole script for the game and created all the characters. This also led to taking a role of the Level Designer and make the levels with the respect for the story.
Action takes place in a medium medieval fantasy world called Elethria. There are several existing kingdoms of men. One day, the unusual thing happened: nearby the northern kingdom also called the WinterHall, several magical portals appeared. From them the bloodthirsty army of demons came out with their immortal king, Belien. Belien has been cursed by the magical gem which he found centuries ago. Since then he became the demon and was chosen to be the Chaos King. Belien once again gathered all Chaos Hordes and he also found a way to summon Chaos portals. From them his army can come into the world of men. He will try once again fulfil the will of the Dreadr, the god of Chaos and destroy all the world of men. Once the opening cinematic is resolved, the camera transitions to the players perspective and the cutscene ends at the position of the entrance gates to the castle. This will create a smooth transition from the cinematic into gameplay. The player will start his journey nearby the Winterhall castle. At this point, player can move only in one direction - along the main road. He can follow the army of Winterhall that will start to march towards the army of demons. It is very important that the scenery, including models, lights etc. is used in both cinematic and the gameplay itself. This should help to build a more immersive experience for the player. The story elements are closely integrated to the gameplay elements. At the start of the cinematic the background history of the events is displayed. Then the main level is shown with the close shots to the main events such as summoning the army of demons or appearance of the player and the army of Winterhall as the main level takes place in the land of Winterhall. The gameplay has to be integrated with the story and cinematic. Player will interact with triggers that will start the next sections of the story such as marching from the castle to the village or triggering the arrival of Belien and his demons. The background story will be displayed throughout three separate levels. First level will be used to show the story of the Empire of Elethria and the introduction to the recent events, second level will be used to better familiarize the player with his character and the third will be a main level where the cinematic will be used to show the current events.
As a Level Designer I designed and created three different levels that were used to help in delivering a story as well as for the gameplay purposes. The main objective was to create an immersive world which will be interesting to learn about and then it will be worth exploring by the player. The level design needed to be consistent to fit the fantasy theme of the game and all cinematics. The design needed to fit both stylistically and thematically. I was also responsible to create the main sequences for all the levels where I had to integrate the background history.
The first scene is fairly simple as the camera is placed in a single location and is projected onto a plane with a texture which represents the world of Elethria. The texture itself has been generated using Azgaar online map generator https://azgaar.github.io/Fantasy-Map-Generator/. Then I derived from it additional textures to add some dynamics to the cinematic.
During the sequence, the texture is changing dynamically, showing the changes, army movement, battles etc. on the map.
I was also responsible for the implementation of text display system for the sequencers. It has been used in all three sequences to render the text with the background history. Since the initial background history in level one is quite complex and long, I also wanted to support the story telling with the addition of the appropriate sounds (battle sounds, marching sound etc.) that were played during specific events such as the fall of the Empire include the animation of fire particles to nicely transforms from the texture with a single Empire to another texture which shows plenty of smaller kingdoms created after the fall of the Empire. In this sequence, the history of the Empire of Elethria is shown as well as the main conflict of Emperor Alathar and the god of Chaos, Dreadr. After delivering the background story by introducing the past events and the story of the magical gem, the story regarding current events is shown. The main characters of the current story are king Enik, Belien and Thorn. First sequence is ending by the close zoom in to the castle of Winterhall on the main map. This helped me achieve an interesting transition into the next level, the throne room of King Enik of the Winterhall.
To make the transition more natural and believable, I used a fading effect just before the maximum zoom in. Additionally, all objects translations are triggered by the useful events in the sequencer. I also used the hidden objects feature so the objects that will be used later in the sequence will remain hidden. Once they will be mentioned in the story, they will appear on the screen at the appropriate location.
The next cinematic takes place in the king Enik's throne room where the main protagonist is being introduced, paladin Thorn. Player will also learn more about current conflict and the monarch himself.
For the level design, I've used the fantasy library 3D model from one of the Epic Game samples available on the learning page as well as on their marketplace, free of charge. I had to setup the lighting in the scene so that the king and his throne are lit very brightly to highlight the status and position of the character. For the Thorn, I decided to remove his helmet to show the face of the character. This should help to familiarize the player with the paladin. One of the most important element of the room was the banner with the Enik's house sigil that has been placed on the wall behind the throne. I also decided to add the cloth simulation for the banner to make it more realistic. The banner helps to build the identity of the king and his castle. Player will know that it is not a random location. The sequence in this level begins from the close look at the physical map which is placed on the table. The map shows all three kingdoms and is in the same exact state as the global map from the previous sequence. I wanted to achieve a smooth transition from the level 1 to level 2 by creating an illusion of first moving towards the map and then, moving away from the physical version of it. The smooth transition is also supported by the use of the fading effect. It also connects to the level one where the screen turns black and at the beginning of the second sequence it turn from black to the actual rendered scene. The initial part of the scene is used to show king Enik, sitting on the thrown and slowly show the player and the surrounding environment, so beautiful walls, columns, the banner and king's guard. After that, the camera is slowly translating towards the character who will appear at the main entrance to the throne room, Thorn. Then a talking animation is played on the king's skeletal mesh to simulate the conversation between the two characters.
To express the nervous and fear of the Enik, I've made the cup of wine physically interactive with the use of the UE 4 physics engine which utilise Nvidia Physix. The right hand of king Enik has an attached collision sphere. During the ending gesticulation during a conversation, Enik will hit the chalice using his right hand. Then, the chalice will fall from the table.
At the end of the scene I decided to once more show the map and two characters from the top perspective and slowly move the camera towards the map. This allowed me to end the sequence by showing the region of the gameplay action on the map. To make the location more visible, I implemented a simple linear interpolation of the dagger mesh which is placed inside the table at the end of the cinematic. The fade effect is used again to make a transition to the third level.
The next level is a direct continuation of the story from the level 2. It is the most complex level in terms of composition and environment. Before the actual level building and assets placing, I had to bolck out the high level representation of the level. This allowed me to define important locations, spawning points and the general structure of the map.
The spatial representation of the level is showing the core element of the world level. The main locations such as Winterhall castle, villages and forests. The surrounding mountains also have been taken into account and have been visualized to make the final level designing easier. Additionaly the key locations such as the portals, spawning positions and the place of the main conflict have been represented by primitives with different colours. This spatial representation of the level with help the level designer to include all necessary element so f the game world
I wanted to show the big chunk of the kingdom. So the core element of the scene is represented by the Winterhall castle which consists of several static meshes. As a castle built in the mountains, it is almost unreachable for any attacker, at least if considering conventional siege. The landscape has been manually sculpted using UE4 sculpting tools.
The reinforced bridge will lead through the narrow way towards the open lands of Winterhall. The region is mostly occupied by dense forests and little villages. To add a little bit of variety in the environment I decided to add a lake in the center of the map. The portals of demons are placed at the end of the map, far away from the castle. I've made sure that there are at least several roads derived from the main entrance of the castle. Player can follow any of those roads to explore the world.
The main combat will take place near the village created near the center of the map. Player is not forced to join the fight. The number of villagers and demons is fixed and they will spawn infinitely. Player can explore the world and then join the battle. The sequence is started from the top camera perspective which is interpolated along the z axis. Similarly to the transition from the sequence 1 to sequence 2, this approach was used to make the smooth transition from the zooming in the view in the second sequence to finally show the main game level. Current events are explained to the player during the sequence so he will know what happened and what is the main objective. Next , there is an extensive shot at the castle and then the view which allow to see the whole region which will help the player to see and understand the scale of the map. Then, the initial battle between the villagers and demons takes place. This shot is used to show the player the exact position of demon portals and the Belien himself. After that, there is a cut to the next shot which is showing a king Enik standing at the top of his citadel. I wanted to show that the king is not only sitting behind the walls, but the recent events as well as the battle and defeat of the villagers is very important to him. That is why I used the shouting animation which has been used previously in the throne room sequence to express the king's emotions during the conversation. After showing the internal part of the castle, the interactive part of the game finally starts.